home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / cmln0886.arc / SCHEME2.LTG < prev    next >
Text File  |  1986-04-21  |  896b  |  28 lines

  1.  
  2.  
  3. ;;; FIB.S
  4. ;;; Recursive procedure for computing Fibonacci numbers in
  5. ;;; PC SCHEME.  The Fibonnaci function is defined:
  6. ;;;    FIB(n) = FIB(n - 1) + FIB(n - 2), for n > 1;
  7. ;;;    FIB(n) = 1, for n = 1;
  8. ;;;    FIB(n) = 1, for n = 0.
  9. ;;; EQ? could be replaced by = and T could be replaced
  10. ;;; by ELSE.  
  11.  
  12.  
  13. (define (fib n)
  14.   (cond ((eq? N 0) 1)                ;;; N = 0 ?
  15.         ((eq? N 1) 1)                ;;; N = 1 ?
  16.         (T (+ (fib (- n 1))          ;;; Recurse.
  17.                  (fib (- n 2))))))   ;;; Recurse.
  18.  
  19. (define (timed-fib-recurse N)
  20.   (define start-time (runtime))
  21.   (define found-fib (fib n))
  22. (define elapsed-time (- (runtime) start-time))
  23. (print N)
  24. (cond (found-fib
  25.         (print " TIME IN MICROSECONDS ")
  26.         (print elapsed-time))))
  27.  
  28.